﻿/// <reference path="jquery-1.7.2.min.js" />
    
    $(document).ready(function () {

        $('#addProfesor').click(function () {
            addProfesor();
        });

        $('#addTurno').click(function () {
            addTurno();
        });

        $('#addEstudiante').click(function () {
            addEstudiante();
        });
    });

    var camposProfesor = new Array();
    camposProfesor[0] = "ProfesorId";
    camposProfesor[1] = "Apellido";
    camposProfesor[2] = "Nombre";
    
    var camposProfesorOcultos = new Array();
    camposProfesorOcultos[0] = 0;
    
    var camposTurnos = new Array();
    camposTurnos[0] = "TurnoId";
    camposTurnos[1] = "DiaDeLaSemana.DiaDeLaSemanaId";
    camposTurnos[2] = "DiaDeLaSemana.Nombre";
    camposTurnos[3] = "HoraInicio";
    camposTurnos[4] = "HoraFin";

    //0 oculto, 1 visible (por defecto se considera visible)
    
    var camposTurnosOcultos = new Array();
    camposTurnosOcultos[0] = 0;//oculto
    camposTurnosOcultos[1] = 0;//oculto
    camposTurnosOcultos[2] = 1;//visible
    camposTurnosOcultos[3] = 1;//visible
    camposTurnosOcultos[4] = 1;//visible


    //estudiantes

    var camposEstudiante = new Array();
    camposEstudiante[0] = "EstudianteId";
    camposEstudiante[1] = "Apellido";
    camposEstudiante[2] = "Nombre";       

    //0 oculto, 1 visible (por defecto se considera visible)

    var camposEstudianteOcultos = new Array();
    camposEstudianteOcultos[0] = 0; //oculto

    //agregar fila a tabla profesor
    function addProfesor() 
    {
        //Crear la nueva fila
        var newRow = new Array();
        //para ProfesorId
        newRow[0] = $("#ddlProfesores option:selected").val();

        //para Apellido, Nombre
        var apyn = $('#ddlProfesores option:selected').text().split(",");
        if (apyn.length == 2) {
            //Apellido    
            newRow[1] = apyn[0]
            //Nombre 
            newRow[2] = $.trim(apyn[1])

            //Agregar la fila a la tabla
            
            AddRowChange("Profesores"
			   , "profesoresTable"
			   , camposProfesor
			   , newRow
               , camposProfesorOcultos
			   , 0
			   , "El profesor ya fue asignado al grupo"
               , "maxIndexProfesor"
			   , true);
        }
        else {
            alert("El apellido y nombre del profesor no es correcto");
        }
    }


    function addTurno() {
        //antes que nada valido que no exista un turno para la clase, de acuerdo a lo definido, una clase solo puede tener un turno.

        if ($('#turnosTable >tbody >tr').length > 0) {
            alert("Una clase o grupo solo puede tener un turno. Si tiene la necesidad de agregar otro turno deberia crear otra clase para ese turno");
            return;
        }
        
        //Crear la nueva fila
                    
        var newRow = new Array();
        var horaDesde =  $("#ddlHoraDe option:selected").text();
        var minDesde =  $("#ddlMinutosDe option:selected").text();
        var horaHasta = $("#ddlHoraHasta option:selected").text();
        var minHasta = $("#ddlMinutosHasta option:selected").text();
          
        //para ProfesorId
        //nuevo turno
        newRow[0] = -1;

        newRow[1] = $("#ddlDiaDeLaSemana option:selected").val();
        newRow[2] = $("#ddlDiaDeLaSemana option:selected").text();

        //para hora:minuto de
        newRow[3] = horaDesde + ":" + minDesde;
        //para hora:minuto hasta
        newRow[4] = horaHasta + ":" + minHasta;

        //Valido que la hora desde sea menor que la hora hasta

        if (horaDesde > horaHasta || (horaDesde == horaHasta && minDesde > minHasta)) {
            alert("La hora desde debe ser menor a la hora hasta")
            return;
        } 

        //Valido si el turno fue agregado anteriormente.
        var index = $("#" + "maxIndexTurno").val();                
        for (x = 0; x < index; x++) {
            
            var idDiaSemana = "Turnos" + "\\[" + x + "\\]\\." + "DiaDeLaSemana\\.DiaDeLaSemanaId";
            var idHoraInicio = "Turnos" + "\\[" + x + "\\]\\." + "HoraInicio";
            var idHoraFin = "Turnos" + "\\[" + x + "\\]\\." + "HoraFin";

            if ( $("#" + idDiaSemana).val() == newRow[1]   &&
                 $("#" + idHoraInicio).val() == newRow[3] &&
                 $("#" + idHoraFin).val() == newRow[4]) 
            {
                alert("El turno ya existe");
                return;
            }
        }
        

        if (newRow[1]) {
            AddRowChange("Turnos"
			   , "turnosTable"
			   , camposTurnos
			   , newRow
               , camposTurnosOcultos
			   , -1
			   , ""
               , "maxIndexTurno"
			   , true);
        }
        else { 
            alert("Elija un dia")
        }
    }


    function addEstudiante() {
        //Crear la nueva fila
        var newRow = new Array();
        //para ProfesorId
        //nuevo turno
        
        newRow[0] = $("#estudianteId").val();
        newRow[1] = $("#estudianteApellido").val();
        newRow[2] = $("#estudianteNombre").val();


        if ($.isNumeric(newRow[0])) {
            AddRowChange("Estudiantes"
			   , "estudiantesTable"
			   , camposEstudiante
			   , newRow
               , camposEstudianteOcultos
			   , 0
			   , "El estudiante ya fue asignado al grupo"
               , "maxIndexEstudiante"
			   , true);

            
            //alert($("#txtEstudiante").val());
            $("#txtEstudiante").focus();
            $("#txtEstudiante").select();         
        }
        else {
            alert("Elija un Estudiante")
        }
    }

    

    
    